//
//  main.m
//  DemoOfNSData
//
//  Created by Mars_ZXB on 16/7/11.
//  Copyright © 2016年 BAT3. All rights reserved.
//

#import <Foundation/Foundation.h>

int main(int argc, const char * argv[]) {
#pragma mark - 第一题
    //计算当前时间和一个固定时间的差值,如果差值在60秒内,输出"刚刚",如果在60秒外3600秒内,输出"xx分钟前",如果3600秒外, 3600*24秒内,输出"xx小时前"
     //格里尼治时间
    NSDate *date = [NSDate date];
    NSLog(@"当前时间为:%@", date);
    //北京时间
    NSDate *date1 = [NSDate dateWithTimeIntervalSinceNow:8*60*60];
    NSLog(@"当前北京时间为:%@", date1);
    // 固定时间
    NSDate *pastDate = [NSDate dateWithTimeIntervalSinceNow:-370];
    NSLog(@"%@", pastDate);
    //　当前时间
    NSDate *nowDate = [NSDate date];
    //固定时间与当前时间的差值
    NSTimeInterval interval4 = [nowDate timeIntervalSinceDate:pastDate];
    NSLog(@"时间差为 %.2f 秒", interval4);
    if (interval4 <= 60) {
        NSLog(@"刚刚");
    }else if(interval4 <= 3600){
        NSLog(@"%.f分钟之前", interval4 / 60);
    }else if(interval4 <= 24*3600){
        NSLog(@"%.f小时之前", interval4 / 3600);
    }else if(interval4 > 24*3600){
        NSLog(@"%@", pastDate);
    }
    
#pragma mark - 第二题
    //将字符串@"2016年04月01日 01点20分18秒"转换为NSDate对象。
    NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
    [formatter setDateFormat:@"yyyy年MM月dd号 HH时mm分ss秒"];
    //准备时间字符串
    NSString *dateString = @"2016年04月01号 01时20分18秒";
    //使用时间格式对象借助时间字符串格式化时间对象
    NSDate *date2 = [formatter dateFromString:dateString];
    //转过来的时间会被回归到零时区的时间
    NSLog(@"%@", date2);
    //如果想得到北京时间需要手动加上8小时
    NSDate *date3 = [date2 dateByAddingTimeInterval:8*60*60];
    NSLog(@"%@", date3);
    
#pragma mark - 第三题
    //将1468232420转成日期类型
    NSDateFormatter *formartter1 = [[NSDateFormatter alloc] init];
    [formartter1 setDateFormat:@"yyyy年MM月dd日 HH时mm分ss秒"];
    
    NSDate *date4 = [NSDate dateWithTimeIntervalSinceNow:1468232420];
    NSString *dateString1 = [formartter1 stringFromDate:date4];
    
    NSLog(@"该时间为:%@", dateString1);
       return 0;
}
